perm filename GEM[0,BGB]12 blob
sn#102639 filedate 1974-05-22 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00014 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 3.0 Geometric Modeling Theory.
C00008 00003 3.1 Kinds of Geometric Models.
C00010 00004
C00014 00005
C00017 00006
C00020 00007
C00023 00008
C00026 00009
C00028 00010 3.2 Polyhedron Definitions.
C00031 00011
C00048 00012 3.3 Camera, Light and Image Modeling.
C00049 00013 First there is the camera lens center locus:
C00071 00014
C00073 ENDMK
C⊗;
3.0 Geometric Modeling Theory.
3.1 Kinds of Geometric Models.
3.2 Polyhedron Modeling.
3.3 Camera, Light and Image Modeling.
3.0 Introduction.
In the specific context of computer vision and graphics,
geometric modeling refers to constructing computer representations of
physical objects, cameras, images and light for the sake of
simulating their behavior. In the context of Artificial Intelligence,
a geometric model is a kind of world model; ignoring subtleties,
geometric world modeling is distinguished from semantic and logical
world modeling in that it is quantitative and numerical rather than
qualitative and symbolic. The notion of a world model requires an
external world environment to be modeled, an internal computer
environment to hold the model, and a task performing entity to use
the model. In the context of geometry, modeling is a synthetic
problem, like a construction with ruler and straight edge, modeling
problems require an algorithmic solution rather than a proof. The
adjective "geometric" however is quite apropos in that it literally
means "world measure" which is exactly the activity to be automated.
3.1 Kinds of Geometric Models.
The main problem of geometric modeling is to invent good
methods for representing arbitrary physical objects in a computer. A
physical object (for the moment) is something solid, rigid, opaque,
Newtonian and macroscopic with a mathematically well behaved surface.
Physical objects include: the earth, chairs, roads, and plastic toy
horses. In addition, physical objects may be moved about in space,
but two objects can not simultaneously occupy the same space at the
same time. The scope of the problem can be appreciated by examining
the virtues and drawbacks of the kinds of models listed in the box.
---------------------------------------------------------
| TEN KINDS OF GEOMETRIC MODELS: |
| |
| Space Oriented: |
| |
| 1. 3-D Space Array. |
| 2. Recursive Cells. |
| 3. 3-D Density Function. |
| 4. 2-D Surface Functions. |
| 5. Parametric Surface Functions. |
| |
| Object Oriented: |
| |
| 6. Manifolds. |
| 7. Polyhedra. |
| 8. Volume Elements. |
| 9. Cross Sections. |
| 10. Skeletons. |
---------------------------------------------------------
For a naive start, first consider a 3-D array in which each
element indicates the presence or absence of solid matter in a cube
of space. Such a 3-D space array has the very desirible properties
of "spatial addressing" and "spatial uniqueness" in their most direct
and natural form. Spatial addressing refers to finding out what the
model contains within a distance R of a locus X,Y,Z; spatial
uniqueness refers to modeling the property that physical solids can
not occupy the same space. The main drawback of the 3-D space array
model is illustrated by the apparently legal FORTRAN statement:
DIMENSION SPACE(10000,10000,10000)
The problem with such a dimension statement is that no present day
computer memory is large enough to contain a 10↑15 element array.
Smaller space arrays arrays can be useful but necessarily can not
model large volumes with high resolution. A further drawback of space
arrays is that objects and surfaces are not readily accessible as
entities; that is a space array lacks the desirible property of
"object coherence".
The space array idea can be salvaged (and must be salvaged)
by noticing that large portions of the array contain similar values.
By grouping blocks of elements with the same values together, the
addressing process becomes more complicated but the overall memory
required is reduced and the two desired properties can be maintained.
One way of doing this (which has been discovered in several
applications) is "recursive cells"; the whole space is considered to
be a cell; if the space is not homogeneous than the first cell is
divided into two (or four or eight) sub cells and the criterion is
applied again. This technique of recursive celling allows the spatial
sorting of objects, if the object models can be subdivided at each
recursion without losing the properties of the objects.
In mathematical physics, arbitrary physical objects are
frequently referred to as three dimensional density functions
W=RHO(X,Y,Z). Unfortunately such density functions can not be written
out for objects such as a typing chair or a plastic horse without
resorting to a programming language or an extensive table (which is
equivalent to the space array model). Some special objects however
are essentially 2-D and can be approximated by surface funtion Z =
F(X,Y). For example geodetic maps have been handled by computer in
such a fashion.
By definition, a function is single valued; consequently the
description of even modestly complicated objects can not be expressed
directly as a single function of orthogonal rectilinear space
coordinates X, Y and Z. It is necessary either to adopt parametric
functions or to subdivide the object into portions that can be
described by simple functions of Cartesian variables. The latter
course of subdividing objects into portions is called segmentation
and is discussed later; the former course can be illustrated by the
example in figure ** showing (X,Y,Z) locus of the surface of a unit
cube expressed as functions of (U,V) surface coordinates. The
advantage of parametric functions is that extended arbitrary curve
surfaces can be expressed; some of the disadvantages are that
parametric curves may be self intersecting, they are not easy to
modified locally, and the functions become impractically complex
before interesting objects are achieved.
At this point, we pass from space oriented models to object
oriented models. I wish to point out the mysterious dicotomy between
objects and the space that contains the objects, and observe that the
same dichotomy appears in the foundations of physics. However, our
goal is merely to simulate the properties of objects; rather than to
explain them. In this regard, the representation of time will
receive no special attention; although an advanced problem solving
robot will want to run world simulations along multiple time paths,
the present discussion will be restricted to simulations along one
time path.
After existence in space and time, another general property
of physical objects is that they can be enclosed by an unbroken two
dimensional surface with an unabiguous inside and outside. Which
brings us to the mathematical topic (celebrated in song by Tom
Lehrer) of the algebraic topology of locally Euclidean transitions of
infinitely differentiable oriented Riemann manifolds. A manifold is
the mathematical abstraction of a surface; a Riemann manifold has a
metric function; an oriented manifold has a unambiguous inside and an
outside; the phrase "infinitely differentiable" can be taken to mean
that the surface is smooth and continuous; and the phrase "locally
Euclidean transitions" refers to the process of segmenting the object
into portions that can be approximated by relatively simple
functions. In particular, the 2-D Riemann (sub)manifold embedded in
3-D Euclidean space is the mathematical object that comes closest to
representing the shape and extent of a physical object; such
manifolds lead directly to the topology of surfaces which in turn is
a convenient computational approach to polyhedra.
The topology of a 2-D Riemann submanifold embedded in a 3-D
Euclidean space is composed of three kinds of simplex: the 0-Simplex
(or vertex), the 1-Simplex (or edge), and the 2-Simplex (or
triangle). In topological analysis, it may be demonstrated that such
2-D Riemann submanifolds may be divided into simplex such that Eulers
equations F-E+V=2-2*H is satisfied (where F is the number of
2-simplex, E is the number of 1-simplex, V is the number of
0-simplex and H is the genus (number of handles) of the manifold);
and such that the surface of the manifold can be approximated by
local functions over each 2-simplex which are Euclidean and which
splice together correctly at all the 1-simplex (edges). By
introducing a sufficient (but finite) number of triangles the
manifold can be approximated to within an epsilon, by constant
functions; yielding the geometric object called the "polyhedron".
The main inherent advantage of a polyhedral model is its
coherent surface topology of faces, edges and vertices. Such a
surface can be subdivided without losing its coherence or the
coherence of the object. The disadvantages of polyhedra include the
lack of spatial uniqueness and spatial addressing; necessitating
computation to be done to detect and prevent spatial conflict and to
find the portions of an entity occupying a given volume. Another
disadvantage is that polyhedra per se are not curved surfaces,
however by associating an appropriate function with each face a model
of a 2-D Riemann manifold can be made, which is a curved object
representation.
Arbitrary objects can also be described by listing a set of
cross sections taken at a sufficient number of cutting planes; this
is how the shape of a ship's hull or an airplane's wing is specified.
Cross sections have the interesting feature of good space modeling on
one axis. Forsaking arbitrary shaped objects, large classes of
things can be described in terms of a small set of basic volume
elements. For example, Roberts and others have built models of
familar objects using only rectangular and triangular right prisms.
Although, arbitrary solid polyhedra can be constructed out of
tetrahedrons (the 3-simplex); no significant modeling system exists
using this potentially interesting approach.
Skeletal models are based on abstracting an object into a
stick figure and by associating a diameter or set of cross sections
with the sticks. In particular, spine cross section models have been
pursued at Stanford by (Agin, Binford and Nervatia; Blum). Spine
cross section models have the advantage of being able to express many
objects in a concise form suitable for recognition, however spine
cross section models can not be used directly for arbitrary shapes.
Finally, it is useful to represent physical objects by a very weak
model such as by using sets of spheres or sets of surface points. It
is interesting to note that the "reality" that the robot in
Winograd's thesis could talk about, was a blocks world based on a
geometric model consisting of points, size of block, and a two paged
LISP routine named FINDSPACE.
To the best of my knowledge, this survey is complete; there
are no other significantly different kinds of geometric models. The
desirable properties that have turned up in this survey are included
in the list below. The final desirable property is that there be some
hope that the computer can derive the model by measurements it can
make itself, although it is quite likely that one model will be best
for input and another model will be best for simulation.
---------------------------------------------------------------------
DESIRABLE PROPERTIES OF A GEOMETRIC MODEL.
1. Spatial Addressing.
2. Spatial Uniqueness.
3. Object Coherence with Divisibility.
4. Surface Coherence with Divisibility.
5. Shape generality.
6. Large Extent with High Resolution.
7. Readily Modifiable.
8. Suitable for photometric, kinematic and dynamic simulation.
9. Feasible memory and computation requirements.
10. Potential for automatic model acquistion.
---------------------------------------------------------------------
3.2 Polyhedron Definitions.
There are several ways to define the word "polyhedron", each
distinct definition emphases a different aspect of the concept so
that the simple forms of the definitions fall short of being
equivalent.
Topologically, the surface elements of a polyhedron forms a
graph that satisfies Euler's F-E+V=2-2*H equation; where F, E and V
are the number of faces, edges and vertices of the polyhedron; and
where H is the number of holes in (or genus of) the polyhedron.
However, not all Eulerian graphs of faces, edges and vertices
correspond to solid polyhedra.
Geometrically, a polyhedron is a simply connected finite
region of space composed of the union of a finite number of convex
polyhedra. A convex polyhedron is a non empty, simply connected,
finite region of space enclosed by a finite number of planes. The
boundary of the polyhedron is called its surface. The simply
connected regions of the surface belonging to only one plane are
called faces. The simply connected regions of the surface belonging
to exactly two planes are called edges; and the loci of the surface
where three or more planes interect are called vertices.
_____________________________________________________________________
Properties of a Solid Polyhedron:
EULER 1. Satisfies Eulers Equation F-E+V=2*B-2*H
TRIVALENCE 2. All vertices and faces have three or more edges.
NON-SELF- 3. No edge intersects a face or vertex
INTERSECTION. to which it is not topologically linked.
FACE PLANARITY 4. All the vertices of a face are coplanar.
SOLIDITY 5. The volume measure is finite and positive.
(FACE CONVEXITY 6. All the faces are convex.)
__________________________________________________________
3.3 Camera, Light and Image Modeling.
Common to both computer graphics and vision is the necessity to model
the cameras, light and images so that pictures may
be synthesized or analysized.
The following camera model has nearly become a standard can be specified by
nine real numbers: three coordinates of locus, three coordinates of orientation,
image aspect ratio, image focal plane distance and pixel spot size.
First there is the camera lens center locus:
CX, CY, CZ, in world coordinates.
Afixed to the lens center is the camera frame of reference with unit
vectors i, j and k. When the image formed by the camera is placed in
correspondence to a display screen, the
unit vector i maps into the rightward positive x of the display
screen, and the unit vector j maps into the upward positive y of the
display screen, and the unit vector k comes out of the display screen
to form a right handed coordinate system. Together the three unit
vectors of the camera are the three by three rotation matrix:
IX, IY, IZ
JX, JY, JZ in world coordinates.
KX, KY, KZ
Next, there are three scales which determine the correspondence
between world size and image size. Observe that the world is measured
in physical units of length like meters or feet while computer images
come in integral sizes like 1024 by 1024 or 480 rows by 512 columns,
thus the conversion scales must be in terms of logical image units
per physical world units. In an actual television camera a minute
image (say 9mm by 12mm) is formed on a vidicon tube and that image
has a particular number of rows and columns. It is the little image
on the vidicon that we pretend to model by the six parameters:
LDX, LDY, LDZ Logical raster size.
PDX, PDY, FOCAL Physical raster size.
Where the number named FOCAL, is the focal plane distance which in
this model (with distant objects) can safely be equated with the lens
focal length and can be given in millimeters (conventional lens run
12.5mm to 75mm for 1" TV). The integer LDZ is an artifact so that
the units come out correctly in the Z dimension. Thus the scales
factors are defined:
SCALEX ← -FOCAL*LDX/PDX;
SCALEY ← -FOCAL*LDY/PDY;
SCALEZ ← FOCAL*LDZ;
The light scattering properties of ordinary surfaces can be
modeled by thinking of the surface as composed of `zillions' of
little mirrors. The orientation of each mirror is described by two
angles, its tilt from the normal vector of the surface and its pan
about the normal vector with respect to a specified reference vector
in the tangent plane of the surface. For a perfect reflecting surface
all the differential mirrors have a zero pan and tilt; for isotropic
conventional surfaces the statistical distribution of pan
orientations is flat and the distribution of tilt orientations is a
blip function; and for a perfect isotropic Lambert surfaces both the
pan and tilt distributions are flat.